package Demo2;

public class demo3 {
    public void selectSort(int[] array) {
        // 遍历数组的每一个元素
        for (int i = 0; i < array.length - 1; i++) {
            // 假设当前元素是最小值
            int minIndex = i;

            // 在未排序部分中寻找最小值的索引
            for (int j = i + 1; j < array.length; j++) {
                // 如果找到比当前最小值还小的元素，则更新最小值的索引
                if (array[j] < array[minIndex]) {
                    minIndex = j;
                }
            }

            // 将当前元素与找到的最小值交换位置
            swap(array, i, minIndex);
        }
    }

    private void swap(int[] array, int pos1, int pos2) {
        // 交换数组中两个位置的元素
        int temp = array[pos1];
        array[pos1] = array[pos2];
        array[pos2] = temp;
    }
}
